package com.class05.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
//@ResponseBody
public class ThymeleafController {


    //     2、响应页面
//    响应页面时，直接返回一个页面的名称即可，不需要带后缀，thymeleaf会自动拼接上后缀
//    需要注意不能用@ResponseBody注解，否则会将页面名称当做字符串返回，而不是响应到页面
    @RequestMapping("/home")
    public String home() {
        return "home";
    }

//    3.测试转发
//    转发到另一个页面，需要使用forward:前缀，相当于
//    request.getRequestDispatcher("/home").forward(request,response);

    //    localhost:8080/testForward
    @RequestMapping("/testForward")
    public String testForward() {
        return "forward:/home";
    }


//    4.测试重定向
    //重定向到另一个页面，需要使用redirect:前缀，相当于
    //response.sendRedirect("/home");
    //重定向到其他域名，需要使用http://前缀

    @RequestMapping("/testRedirect")
    public String testRedirect() {

        return "redirect:https://www.baidu.com/";
    }
//    重定向与转发的区别：
    //1、转发是服务器行为，重定向是客户端行为
    //2、转发是服务器内部跳转，重定向是服务器外部跳转
//    3、转发是一次请求，重定向是两次请求
}
